import type { BaseResponse } from './baseResponse';

// 指南请求分页数据模型
export interface GuideRequest {
  id?: number;
  title?: string; // 指南标题
  categoryId?: number; // 指南类别ID
  isRead?: number; // 是否已读
  isCheck?: number; // 是否审核
  beginTime?: string; // 开始时间
  endTime?: string; // 结束时间
  pageNum: number; // 页码
  pageSize: number; // 每页条数
}

// 指南新增请求数据模型
export interface GuideAddRequest {
  id?: number; // 指南ID
  title: string; // 指南标题
  categoryId: number; // 指南类别ID
  imgUrl: string; // 图片地址
  content: string; // 指南内容
  isCheck: number; // 是否审核
}

// 指南响应数据模型
export interface GuideResponse {
  id: number; // 指南ID
  title: string; // 指南标题
  categoryId: number; // 指南类别ID
  categoryName: string; // 指南类别名称
  imgUrl: string; // 图片地址
  content: string; // 指南内容
  publisher: string; // 发布者
  createTime: string; // 创建时间
  updateTime: string; // 更新时间
  readNum: number; // 阅读量
  likeNum: number; // 点赞量
  isRead: number; // 是否已读
  isCheck: number; // 是否审核
  rejectReason: string; // 拒绝原因
}

// 指南列表数据结构
export interface GuideList {
  total: number; // 总数
  records: GuideResponse[]; // 指南数组
}

// 用通用响应体类型包裹
export type GuideListResult = BaseResponse<{ data: GuideList }>;

export type GuideDetailResult = BaseResponse<{ data: GuideResponse }>;
